<html xmlns="http://www.w3.org/1999/xhtml">
<head>
 <title>LZXリファレンス datapath</title>
  <othercredit role="translator">
    <firstname>Atuo</firstname>
    <surname>Seki</surname>
        <contrib>2006/05/08　翻訳初版</contrib>
 </othercredit>
</head>
<body>

<!-- ===================================================================== -->
<!-- = XML information goes here                                         = -->
<!-- ===================================================================== -->
<lzelement title="Datapath">
    <lztier>LFC</lztier>
    <lzcategory>Data</lzcategory>
    <lzshortdesc>
             データとノード間のバインド。
    </lzshortdesc>
    <lztag>tag-datapath.xml</lztag>
    <lzapi>api-lzdatapath.xml</lzapi>
</lzelement>

<p>
Datapathはデータ階層構造をOpenLaszloアプリケーションのデータ階層構造と合併するのに使用します。
これを使用するには<classname>LzDatapointer</classname>でサポートされているXPathの構文を使います。
<attribute link="true">datapath</attribute>属性にノードを与える時、
XPathとして与えられた値のdatapathを作成します。datapathがノードを取得したなら、
(<i>つまり</i>、属性ゲッタや<code>()</code>オペレータでは終わりません）
ノードをそのデータコンテキストに写します、そして全ての子のノードは絶対的にデータコンテキストを共有しますが、
それ以上は何もしません。datapathがデータを取得したなら、ノードの時にはない、いくつかの事が起こります。
まず最初に、ノードの<attribute>data</attribute>プロパティを設定します、そしてノードに
<event>ondata</event>イベントを送ります。次に、ノードの<method>applyData</method>
メソッドを引数のデータとして呼ばれます。datapathが１つ以上データノードに一致している場合、
一致しているdatapathがあるviewはそれぞれのデータノードの為に一度複製されます、そして
<a href="replicationmanager.html">replication manager</a>は親のviewの位置を持っていきます。
</p>

<p>
ノードは一つのdatapathしか持つことができません、そしてdatapathは常に
<code>datapath</code>名を持っています。別々のノードとして<tagname>datapath</tagname>
タグを書く事によって<a href="#attr-pooling">pooling</a>そして<a
href="#attr-replication">lazy replication</a>
のような付加的な選択をdatapathで使用できるでしょう。
</p>

<example title="Mapping data to views using datapaths.">
&lt;canvas height="120"&gt;
  &lt;dataset name="testdata"&gt;
    &lt;Monday temp="Hi 48"&gt; Partly Cloudly &lt;/Monday&gt;
    &lt;Tuesday temp="Hi 60"&gt; Showers Likely &lt;/Tuesday&gt;
    &lt;Wednesday temp="Hi 63"&gt; Chance Showers &lt;/Wednesday&gt;
    &lt;Thursday temp="Hi 58"&gt; Mostly Sunny &lt;/Thursday&gt;
    &lt;Friday temp="Hi 50"&gt; Clear and Cold &lt;/Friday&gt;
  &lt;/dataset&gt;
  &lt;simplelayout spacing="5"/&gt;
  &lt;view datapath="testdata:/*"&gt;
    &lt;view&gt;
      &lt;simplelayout axis="x"/&gt;
      &lt;text <em>datapath="name()"</em>/&gt;
      &lt;text <em>datapath="text()"</em>/&gt;
      &lt;text <em>datapath="@temp"</em>/&gt;
    &lt;/view&gt;
  &lt;/view&gt;
&lt;/canvas&gt;
</example>

</body>
</html>
<!-- * X_LZ_COPYRIGHT_BEGIN ***************************************************
* Copyright 2001-2004 Laszlo Systems, Inc.  All Rights Reserved.              *
* Use is subject to license terms.                                            *
* X_LZ_COPYRIGHT_END ****************************************************** -->
